Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

295
Views
¿Qué es `1..__truediv__`? ¿Python tiene una sintaxis de notación .. ("punto punto")?

Recientemente me encontré con una sintaxis que nunca antes había visto cuando aprendí python ni en la mayoría de los tutoriales, la notación .. , se parece a esto:

 f = 1..__truediv__ # or 1..__div__ for python 2 print(f(8)) # prints 0.125

Pensé que era exactamente lo mismo que (excepto que es más largo, por supuesto):

 f = lambda x: (1).__truediv__(x) print(f(8)) # prints 0.125 or 1//8

Pero mis preguntas son:

  • ¿Cómo puede hacer eso?
  • ¿Qué significa realmente con los dos puntos?
  • ¿Cómo puede usarlo en una declaración más compleja (si es posible)?

Esto probablemente me ahorrará muchas líneas de código en el futuro... :)

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Lo que tiene es un literal float sin el cero final, al que luego accede al método __truediv__ . No es un operador en sí mismo; el primer punto es parte del valor flotante y el segundo es el operador de punto para acceder a las propiedades y métodos de los objetos.

Puede llegar al mismo punto haciendo lo siguiente.

 >>> f = 1. >>> f 1.0 >>> f.__floordiv__ <method-wrapper '__floordiv__' of float object at 0x7f9fb4dc1a20>

Otro ejemplo

 >>> 1..__add__(2.) 3.0

Aquí sumamos 1,0 a 2,0, lo que obviamente da como resultado 3,0.

over 4 years ago · Santiago Trujillo Report

0

Dos puntos juntos pueden ser un poco incómodos al principio:

 f = 1..__truediv__ # or 1..__div__ for python 2

Pero es lo mismo que escribir:

 f = 1.0.__truediv__ # or 1.0.__div__ for python 2

Porque los literales float se pueden escribir de tres formas:

 normal_float = 1.0 short_float = 1. # == 1.0 prefixed_float = .1 # == 0.1
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!